/*
********************************************************************************
*
*	file : config
*
********************************************************************************
*/

#include "dataproc.h"
#include "mytype.h"
#define _APP_UPDATE_MODULE_
#include "app_update.h"

/********************************************************************************
*  iap info
********************************************************************************/
#define APP_FLASH_BASE (0x8000000UL + 0x20000)
#define APP_FLASH_SIZE 0x60000UL
#define MEM_OFFSET_ID (4 * 8*0)
#define ID_MEM_VALUE (0x55000011)

const char update_src_file_name[] = "BOOT_SAP.bin";
const char update_out_file_name[] = "BOOT_LOG.txt";

/*******************************************************************************
* @brief  ap_update_start :
* \param[in] none
* \retval: none
*******************************************************************************/
void ap_ext_start(void)
{
	iap_obj.head_buff = malloc(1024 + 32);
	iap_obj.comm_buff = malloc(1024 + 32);
	iap_obj.buff = malloc(1024 + 32);

	iap_obj.src_file = update_src_file_name;
	iap_obj.out_file = update_out_file_name;

	// APP 地址信息
	iap_obj.app_mem_base = APP_FLASH_BASE;
	iap_obj.app_mem_size = APP_FLASH_SIZE;
	
	// ID 信息，偏移为0时不检测
	iap_obj.id_mem_offset = MEM_OFFSET_ID;
	iap_obj.id_mem_value = ID_MEM_VALUE;
}

/*******************************************************************************
* @brief  ap_ext_end :
* \param[in] none
* \retval: none
*******************************************************************************/
void ap_ext_end(void)
{
	free(iap_obj.head_buff);
	free(iap_obj.comm_buff);
	free(iap_obj.buff);
}
